home *** CD-ROM | disk | FTP | other *** search
/ Openstep 4.2 (Developer) / Openstep Developer 4.2.iso / NextDeveloper / OpenStepConversion / IntermediateFrameworks1 / AppKit.framework / Headers / NSPasteboard.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-03-30  |  3.0 KB  |  99 lines

  1. /*
  2.     Pasteboard.h
  3.     Application Kit, Release 2.0
  4.     Copyright (c) 1988, 1989, 1990, NeXT, Inc.  All rights reserved. 
  5. */
  6.  
  7. #import <Foundation/Foundation.h>
  8. #import <objc/hashtable.h>
  9. @class NXData;
  10.  
  11. /* standard Pasteboard types */
  12.  
  13. extern NSString *NSStringPboardType;
  14. extern NSString *NSPostScriptPboardType;
  15. extern NSString *NSTIFFPboardType;
  16. extern NSString *NSRTFPboardType;
  17. extern NSString *NSFilenamesPboardType;
  18. extern NSString *NSTabularTextPboardType;
  19. extern NSString *NSFontPboardType;
  20. extern NSString *NSRulerPboardType;
  21. extern NSString *NSFileContentsPboardType;
  22. extern NSString *NSColorPboardType;
  23.  
  24. /* standard Pasteboard names */
  25.  
  26. extern NSString *NSGeneralPboard;
  27. extern NSString *NSFontPboard;
  28. extern NSString *NSRulerPboard;
  29. extern NSString *NSFindPboard;
  30. extern NSString *NSDragPboard;
  31.  
  32. extern NSString *NSCreateFilenamePboardType(NSString *fileType);
  33. extern NSString *NSCreateFileContentsPboardType(NSString *fileType);
  34. extern NSString *NSGetFileType(NSString *pboardType);
  35. extern NSArray *NSGetFileTypes(NSArray *pboardTypes);
  36.  
  37. @interface NSPasteboard : NSObject
  38. {
  39.     id                  owner;
  40.     int                 _realChangeCount;
  41.     int                 _ourChangeCount;
  42.     port_t              _server;
  43.     id                 *_ownerArray;
  44.     int            _numTypes;
  45.     NSString *             *_typesArray;
  46.     port_t              _client;
  47.     BOOL               *_typesProvided;
  48.     NSString *        _name;
  49.     NSString *        _host;
  50.     int            _serverVersion;
  51.     unsigned int        _reservedPasteboard4;
  52. }
  53.  
  54. + generalPasteboard;
  55. + pasteboardWithName:(NSString *)name;
  56. + pasteboardWithUniqueName;
  57.  
  58. + (NSArray *)typesFilterableTo:(NSString *)type;
  59.  
  60. + pasteboardByFilteringFile:(NSString *)filename;
  61. + pasteboardByFilteringData:(NXData *)data ofType:(NSString *)type;
  62. + pasteboardByFilteringTypesInPasteboard:(NSPasteboard *)pboard;
  63.  
  64. - (NSString *)name;
  65. - (void)dealloc;
  66. - freeGlobally;
  67.  
  68. - (int)declareTypes:(NSArray *)newTypes owner:newOwner;
  69. - (int)addTypes:(NSArray *)newTypes owner:newOwner;
  70. - (int)changeCount;
  71.  
  72. - writeType:(NSString *)dataType data:(const char *)theData length:(int)numBytes;
  73. - writeType:(NSString *)dataType fromStream:(NXStream *)stream;
  74. - readType:(NSString *)dataType data:(char **)theData length:(int *)numBytes;
  75. - (NXStream *)readTypeToStream:(NSString *)dataType;
  76.     /* deallocate stream with NXCloseMemory(stream, NX_FREEBUFFER) */
  77. - deallocatePasteboardData:(char *)data length:(int)numBytes;
  78.  
  79. - (NSArray *)types;
  80. - (NSString *)availableTypeFromArray:(NSArray *)types;
  81.  
  82. - (BOOL)setPropertyList:(id)plist forType:(NSString *)dataType;
  83. - (id)propertyListForType:(NSString *)dataType;
  84.  
  85. - (BOOL)setString:(NSString *)string forType:(NSString *)dataType;
  86. - (NSString *)stringForType:(NSString *)dataType;
  87.  
  88. @end
  89.  
  90. @interface NSPasteboard(FileContents)
  91. - (BOOL)writeFileContents:(NSString *)filename;
  92. - (NSString *)readFileContentsType:(NSString *)type toFile:(NSString *)filename;
  93. @end
  94.  
  95. @interface NSObject(PasteboardOwner)
  96. - pasteboard:sender provideDataForType:(NSString *)type;
  97. - pasteboardChangedOwner:sender;
  98. @end
  99.